草庐IT

TypeScript 命名空间

全部标签

javascript - JSON 中的命名空间

有没有像XML命名空间一样的JSON命名空间?有人为此创建了规范或库吗?这是好主意还是坏主意?我想制作一个可以用XML和JSON表示的数据规范。然而,我还需要命名空间概念,数据可以通过不同词汇表中的注释进行扩展。更具体地说,这是关于表示事件。我的模式将以基本术语(时间和地点)描述事件,但如果您考虑一下,事件可以用不同的信息进行注释,例如我不想在我的架构中指定的与会者或图像URL。 最佳答案 JSON-LD可能有帮助:"JSON-LD(JavaScriptObjectNotationforLinkingData)isalightwei

Javascript 命名空间

我希望将我的javascript拆分成不同的文件并为每个文件提供一个像这样的“子”命名空间,从而使我的javascript更加模块化。subA.jsif(typeofex=="undefined"){varex={};}ex.subA=function(){//allfunctionsofsubAhere}subB等也一样目前我有1个文件,ex.jsvarex=(function(){//privatevars/funcsreturn{//publicvars/funcs}})();看起来我应该将我的大部分功能移动到subA.js和subB.js,但仍然在开始时包括ex.js,然后是s

javascript - 为什么我不能将 JavaScript 函数命名为 `all` ?

all不是内置函数,也不是关键字,但是为什么调用不到名为all的函数?调试控制台中没有错误消息,如果我将其重命名为all2,该函数可以正常工作。这是代码:在chrome和IE10中测试functionall(){alert(1);}functionall2(){alert(2);} 最佳答案 这应该在chrome中有效。然而all在IE11之前一直是IE中的一个方法。[allisnolongersupported.StartingwithInternetExplorer11,usegetElementById.Forinfo,see

javascript - 编译输出中的 TypeScript 依赖项未按正确顺序解析

晚上好。我在从Typescript项目编译的Javascript输出中出现了一个-看似-废话问题。这个问题看起来很复杂,但我会尽量让它简短明了。我的名为“MyApp”的Typescript项目(完全面向对象,在VisualStudio2013中开发)被设置为编译为单个输出文件(main.js,ECMAScript5),然后在浏览器中运行。没有使用模块加载软件(如AMD),我希望保持这种状态。项目中引用的所有typescript文件(.ts)都是自动编译的,无需使用///手动引用它们.我有这个文件(Score.ts),深入到命名空间结构的一层:App_Script/Score.tsnam

javascript - 事件处理程序绑定(bind)到匿名函数与命名函数

我知道.on()与jQuery一起存在并且.bind()不应该在未来使用,考虑到我有jQuery版本大于或等于1.7。我想知道的是:使用.bind()将匿名函数或命名函数附加到事件处理程序之间有什么区别吗?示例://Anonymousfunction$(".warning").bind("click",function(){alert("Hello");});//Namedfunction$(".warning").bind("click",foo);functionfoo(){alert("Hello");}假设我的页面中有100个div类warning。函数.bind()会将一个新

javascript - 命名空间与自调用函数

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我有一个问题:在Javascript中限制范围的更好方法是什么:使用这样的命名空间:varNAMESPACE={};NAMESPACE.foo=function(){console.log('Hello');}NAMESPACE.foo();还是应该像这样使用自调用函数(function(){functionfoo(){console.log('Hell

javascript - typescript :如何导入类 ("Uncaught ReferenceError")

我是Typescript的新手。我喜欢这个想法,编译器会指出大部分错误,因为他真的得到了代码。现在我做了一个测试项目,没有编译错误,但运行时出现异常:UncaughtReferenceError:Boatisnotdefined(anonymousfunction)@Main.ts:7显然导入不起作用。但为什么?我尝试使用amd和commonjs并得到了同样的错误。这里是代码:index.htmlTypeScriptTestMain.ts/////////varoutputElement=document.getElementById('output');varvehicleOne:V

javascript - typescript 找不到名称 'IterableIterator'

我的typescript代码有问题通过tsc编译后,出现类似cannotfindsomenames的错误。app.ts(1,22):errorTS2304:Cannotfindname'IterableIterator'.app.ts(8,20):errorTS2304:Cannotfindname'IteratorResult'.app.ts(26,6):errorTS2304:Cannotfindname'Symbol'.app.ts(26,26):errorTS2304:Cannotfindname'IterableIterator'.我的代码是:classFibimplemen

javascript - 无法使用 ngx translate/core - angular 2 typescript 获取文本的动态翻译

问题:我有来自Json文件的动态文本。我正在使用这样的translate.get()方法:this.translate.get('keyInJson').subscribe(res=>{this.valueFromJson=res;/*creatinganobjectusingabovetext*/});由于这是异步的,因此我无法在页面呈现时获取翻译后的文本。我尝试将上述方法包装在Observables和Promises中,但它无法在页面加载期间获取文本的翻译版本。在尝试了不同的方法后,我能够获得翻译后的文本,但代码变得过于复杂且不可靠。预期/期望的行为应该加载文本的翻译版本问题重现动

javascript最佳实践定义变量(命名空间)检查尚未定义

想从专家那里得到意见,我正在声明一个变量,它将充当我的应用程序javascript代码的命名空间,但我想检查它是否尚未定义。这段代码很简洁并且“似乎”可以工作-有什么理由我应该避免这种情况并使用typeof'undef'检查来代替?varMY_NAMESPACE=MY_NAMESPACE||{};谢谢 最佳答案 这是标准的做法。参见MattSnider'sanalysisYUIYAHOO.namespacefunction它使用相同的检查(也查看如何使创建namespace变得容易)。Matt的代码,他从YUI改编到window对象